//1.callback 多个请求并发，不好管理，链式调用，导致回调嵌套过多
//2.promise 优点可以优雅的处理异步，处理错误，基于回调的，还是会有嵌套问题
//3.generator+co dva让代码像同步，不能支持try catch
//4.async+await 解决异步问题，而且支持try catch

let mz = require('mz/fs');
async function read(){
  // try{
    let r = await mz.readFile('./promise/name1.txt','utf8');
    let age = await mz.readFile(r,'utf8');
    let e = await [age]
    return e;
  // }catch(e){
  //   console.log(e)
  // }
  
}
//async函数执行后返回一个promise，如果被try+catch，那么这个promise返回的是true
read().then(data=>{
  console.log(data)
}).catch(err=>{//或者不用try catch，在这里catch
  console.log(err)
})